﻿using System;

class BinaryDigitsCount
{
    static void Main()
    {
        //C# Fundamentals 2011/2012 Part 1 - Sample Exam

        byte digitB = byte.Parse(Console.ReadLine());
        ushort numbers = ushort.Parse(Console.ReadLine());     //USHORT - за да обхване от 1 до 1000
        uint binaryHolder;                                      //Int64???????????????????????????????????

        int[] sumOfBinary = new int[numbers];   //в този масив ще трупаме събраните бройки 1 или 0 на всяко от числата
        for (int i = 0; i < numbers; i++)
        {
            sumOfBinary[i] = 0;
        }

        for (int i = 0; i < numbers; i++)
        {
            uint currentNumber = uint.Parse(Console.ReadLine()); //четем всяко число от конзолата; UINT - за да обхване до 4 млрд.
            
            while (currentNumber != 0)      //с този цикъл сме сигурни, че когато останат само нулите няма да ги брои
            {
                binaryHolder = currentNumber % 2;

                if (binaryHolder == digitB)
                {
                    sumOfBinary[i]++;
                }
                currentNumber = currentNumber / 2;
            }                      
        }

        for (int i = 0; i < numbers; i++)       //отпечатва резултата за всяко число, въведено от конзолата
        {
            Console.WriteLine(sumOfBinary[i]);
        }
    }
}

